1. Technical Field
A “Communication Device with Energy Efficient Sensing” provides various hardware and software-based techniques for reducing energy usage of communications devices while enabling continuous operation of various sensors and components of the communications device.
2. Background
Users typically carry their mobile phones, smart phones, handheld communications devices, etc., to almost every activity they engage in during the course of the day. Note that such devices are collectively referred to herein as “mobile phones” or “communications devices” for purposes of discussion. Even though most people carry their mobile phones throughout the day, these devices are generally actively in use for only a small amount of time for making phone calls, web browsing, entertainment, etc.
The ubiquity, mobility, and connectivity of mobile communications devices have made them an ideal platform for developing numerous personalized applications, which is evident from the large number of apps available for various mobile platforms. Apart from having a reasonably powerful processor and graphics capability for supporting rich applications, current high-end communications devices often include some or all of a rich set of built-in sensors that enable measuring various phenomena on and around the communications devices and thus on and around their owners. Applications on mobile phones can either use the sensors on-demand or continuously (or in some combination of these two cases, depending upon the phone, sensors, and applications).
For example, in the case of on-demand operations, sensor reading operations are typically initiated by the processor of the mobile phone when a program or application in the foreground needs to access context information relating to the sensor. A simple example of this idea is that, when a query is sent, a search application can read a GPS sensor in the phone to get the user's current location. However, limiting sensor access to the times when the phone has the user's attention (i.e., times other than when the phone is “off” or in a standby or sleep mode) greatly restricts sensor information that could otherwise be of significant value for a variety of purposes and applications.
Applications requiring continuous sampling of sensors associated with a communications device or mobile are also becoming ubiquitous. For example, one such application that reacts to sudden changes in the user behavior, such as user tapping on the phone (e.g., to initiate a command, respond to a prompt, etc.), requires continuous sensing to detect the user tapping activity. Unfortunately, such continuous sensing is quite challenging from an energy expenditure perspective under the current architecture of typical communications devices, since these types of continuous sensing activities typically have a significant impact on the device's battery life.
In particular, designed mainly for bursts of user interactions, current mobile phones and communications devices generally use a primary processor or CPU to directly interface with and control the various sensors of the device. Consequently, continuous sensing by such devices implies that the main or primary processor has to stay on all the time. These processors typically consume hundreds of milli-Watts (mW) when they are active even when the screen and radios are turned off. Unfortunately, this energy usage significantly limits the battery life, thereby jeopardizing the usability of the phone. Thus energy consumption concerns have become a significant barrier for continuous sensing applications.
For example, the current draw of a typical smart phone under different operating conditions when using an integrated accelerometer can be quite substantial. Energy expenditure measurements of a conventional smart phone using an integral accelerometer indicate that energy usage by the accelerometer itself is generally less than about 1 mW of power. In contrast, when the processor or CPU of the phone is actually sampling the accelerometer, the overall power consumption of the phone is on the order of about 700 mW (depending, of course, on the specific phone architecture). Although the sensor itself has a very small power consumption, the need to keep the phone's main processor and associated high power components active to access the sensor reading results in an overall power consumption which is on the order of about 700 times larger than the sensor power consumption. Consequently, as mobile phone main processors continue to become more powerful and sensors become more and more energy efficient, the power consumption of the main processor will continue to dominate the total energy spent when accessing sensors.
Another obstacle to continuous sensing on current mobile phones or communications devices is that continuous or periodic sampling of one or more sensors prevents the phone from going into an idle mode wherein battery power is conserved. For example, a typical phone that was evaluated for energy usage was observed to take approximately 900 ms to move into an idle state (following a period of no activity) and approximately 270 ms to exit from the idle state (once activity is detected). As a result, a full transition between the phone's idle and active states takes more than one second. This implies that, even at a relatively low sampling frequency of 1 Hz, continuous sampling of sensors (such as accelerometers) will prevent the phone from entering the low power idle state, since the phone does not have enough time to transition between idle and active states between two consecutive sensor readings.